package edu.whut.mall.admin.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @program: d9lab-mall
 * @description: 团购规则参数
 * @author: Wayne
 * @create: 2020-05-15 17:18
 **/
@Data
public class GroupBuyRuleParams {

    /**
     * 团购分类id
     */
    @NotNull
    private Long categoryId;

    /**
     * 团购规则名称
     */
    @NotBlank
    private String ruleName;

    /**
     * 商品id
     */
    @NotNull
    private Long productId;

    /**
     * 折扣比例
     */
    @NotNull
    private BigDecimal discountRate;

    /**
     * 团购优惠价
     */
    @NotNull
    private BigDecimal groupBuyPrice;

    /**
     * 限购数量
     */
    @NotNull
    private Integer limitNumber;

    /**
     * 成功开团的人数要求
     */
    @NotNull
    private Integer successPeopleNumber;


    /**
     * 未满足人数是否开团
     */
    @NotNull
    private Integer overtimeClustering;

    /**
     * 备注
     */
    private String remark;

    /**
     * 开团时间
     */
    @NotNull
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    /**
     * 结束时间
     */
    @NotNull
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    /**
     * 成团有效时间
     */
    @NotNull
    private Integer validTime;
}
